H2 Database এর CRUD অপারেশন

Database Tutorials - এইচ২ ডাটাবেস (H2 Database)
243
243

CRUD শব্দটি Create, Read, Update, এবং Delete এর সংক্ষিপ্ত রূপ, যা ডেটাবেজে ডেটার মৌলিক অপারেশনগুলিকে নির্দেশ করে। H2 Database এ এই অপারেশনগুলি খুব সহজে SQL কুয়েরির মাধ্যমে পরিচালনা করা যায়। নিচে প্রতিটি অপারেশন সম্পর্কে বিস্তারিত আলোচনা করা হলো।


১. Create (টেবিল এবং ডকুমেন্ট তৈরি করা)

H2 ডেটাবেজে নতুন ডেটা যোগ করতে Create অপারেশন ব্যবহার করা হয়। এটি টেবিল তৈরি, ডেটা ইনসার্ট করা এবং নতুন রেকর্ড তৈরি করতে ব্যবহৃত হয়।

টেবিল তৈরি করা

CREATE TABLE employees (
    id INT PRIMARY KEY,
    name VARCHAR(100),
    position VARCHAR(50),
    salary DECIMAL(10, 2)
);

এটি একটি employees নামক টেবিল তৈরি করবে, যেখানে id, name, position এবং salary নামের কলাম থাকবে।

ডেটা ইনসার্ট করা

টেবিলে ডেটা ইনসার্ট করতে INSERT INTO কুয়েরি ব্যবহার করা হয়:

INSERT INTO employees (id, name, position, salary) 
VALUES (1, 'John Doe', 'Manager', 60000.00);

এটি employees টেবিলে একটি নতুন রেকর্ড ইনসার্ট করবে যেখানে id 1, name 'John Doe', position 'Manager', এবং salary 60000.00।


২. Read (ডেটা পড়া)

H2 ডেটাবেজে ডেটা পড়তে SELECT কুয়েরি ব্যবহার করা হয়। এটি একটি বা একাধিক টেবিল থেকে ডেটা রিট্রিভ করার জন্য ব্যবহৃত হয়।

সব ডেটা পড়া

SELECT * FROM employees;

এটি employees টেবিলের সব রেকর্ডগুলো পড়ে এবং ফলাফল হিসেবে প্রদর্শন করবে।

নির্দিষ্ট কলাম পড়া

SELECT name, position FROM employees;

এটি employees টেবিলের name এবং position কলামের ডেটা পড়ে।

নির্দিষ্ট শর্তে ডেটা পড়া

SELECT * FROM employees WHERE salary > 50000;

এটি salary কলামের মান 50000 এর বেশি এমন সমস্ত রেকর্ড পড়বে।


৩. Update (ডেটা আপডেট করা)

H2 ডেটাবেজে ডেটা আপডেট করতে UPDATE কুয়েরি ব্যবহার করা হয়। এটি নির্দিষ্ট রেকর্ডগুলির মান পরিবর্তন করতে ব্যবহৃত হয়।

একটি রেকর্ড আপডেট করা

UPDATE employees 
SET salary = 65000 
WHERE id = 1;

এটি id 1 এর জন্য salary মান 65000 এ পরিবর্তন করবে।

একাধিক রেকর্ড আপডেট করা

UPDATE employees 
SET salary = salary + 5000 
WHERE position = 'Manager';

এটি position কলামের মান 'Manager' হওয়া সমস্ত রেকর্ডের salary মানে 5000 যোগ করবে।


৪. Delete (ডেটা ডিলিট করা)

H2 ডেটাবেজে ডেটা ডিলিট করতে DELETE কুয়েরি ব্যবহার করা হয়। এটি ডেটাবেজ থেকে এক বা একাধিক রেকর্ড মুছে ফেলতে ব্যবহৃত হয়।

একটি রেকর্ড ডিলিট করা

DELETE FROM employees WHERE id = 1;

এটি id 1 এর রেকর্ডটি employees টেবিল থেকে মুছে ফেলবে।

সব রেকর্ড ডিলিট করা

DELETE FROM employees;

এটি employees টেবিলের সব রেকর্ড মুছে ফেলবে, তবে টেবিলটি থাকবে।


CRUD অপারেশন উদাহরণ

ধরা যাক, আমাদের একটি employees টেবিল আছে এবং আমরা এতে কিছু CRUD অপারেশন করতে চাই। নিচে পুরো একটি উদাহরণ দেয়া হলো:

  1. টেবিল তৈরি করা
CREATE TABLE employees (
    id INT PRIMARY KEY,
    name VARCHAR(100),
    position VARCHAR(50),
    salary DECIMAL(10, 2)
);
  1. ডেটা ইনসার্ট করা
INSERT INTO employees (id, name, position, salary) 
VALUES (1, 'Alice', 'Engineer', 50000.00);
INSERT INTO employees (id, name, position, salary) 
VALUES (2, 'Bob', 'Manager', 70000.00);
INSERT INTO employees (id, name, position, salary) 
VALUES (3, 'Charlie', 'Analyst', 45000.00);
  1. ডেটা রিড করা
SELECT * FROM employees;
  1. ডেটা আপডেট করা
UPDATE employees 
SET salary = 75000 
WHERE id = 2;
  1. ডেটা ডিলিট করা
DELETE FROM employees WHERE id = 3;

সারাংশ

  • Create: নতুন টেবিল তৈরি করা এবং ডেটা ইনসার্ট করা।
  • Read: টেবিল থেকে ডেটা পড়া।
  • Update: টেবিলের ডেটা আপডেট করা।
  • Delete: টেবিল থেকে ডেটা মুছে ফেলা।

H2 ডেটাবেজে CRUD অপারেশনগুলো SQL কুয়েরির মাধ্যমে অত্যন্ত সহজ এবং দ্রুত সম্পন্ন করা যায়।

common.content_added_by

Create: টেবিল এবং ডকুমেন্ট তৈরি করা

200
200

H2 ডেটাবেজে টেবিল এবং ডকুমেন্ট তৈরি করা হল ডেটাবেজের মূল অংশ। H2 ডেটাবেজে টেবিল তৈরি করা একটি SQL অপারেশন, যা ডেটাবেজের মধ্যে ডেটা সংরক্ষণের জন্য ব্যবহৃত হয়। একইভাবে, ডকুমেন্ট তৈরি করা ডকুমেন্ট-ওরিয়েন্টেড ডেটাবেজ ফিচার হিসাবে ব্যবহৃত হতে পারে (যেমন H2-তে JSON ডকুমেন্ট)।

এখানে আমরা H2 ডেটাবেজে টেবিল এবং ডকুমেন্ট তৈরি করার পদ্ধতি সম্পর্কে বিস্তারিত আলোচনা করব।


১. টেবিল তৈরি করা

H2 ডেটাবেজে একটি টেবিল তৈরি করার জন্য CREATE TABLE SQL কমান্ড ব্যবহার করা হয়। এই কমান্ডটি ডেটাবেজে একটি নতুন টেবিল তৈরি করতে ব্যবহৃত হয় এবং টেবিলের মধ্যে কোন কোন কলাম থাকবে, তাদের ডেটা টাইপ কী হবে তা নির্ধারণ করতে হবে।

Syntax:

CREATE TABLE table_name (
    column1_name column1_datatype,
    column2_name column2_datatype,
    ...
);

উদাহরণ:

ধরা যাক, আমরা একটি students নামক টেবিল তৈরি করতে চাই, যার মধ্যে id, name, এবং age নামে তিনটি কলাম থাকবে।

CREATE TABLE students (
    id INT PRIMARY KEY,
    name VARCHAR(100),
    age INT
);

এই SQL কোডটি একটি students নামক টেবিল তৈরি করবে, যেখানে:

  • id: একটি পূর্ণসংখ্যা (integer), যা টেবিলের প্রধান কী হিসেবে ব্যবহৃত হবে।
  • name: একটি স্ট্রিং (VARCHAR), যেখানে ছাত্রের নাম রাখা হবে।
  • age: একটি পূর্ণসংখ্যা (integer), যা ছাত্রের বয়স সংরক্ষণ করবে।

২. ডকুমেন্ট তৈরি করা (JSON)

H2 ডেটাবেজ ডকুমেন্ট-ওরিয়েন্টেড ডেটাবেজের ফিচার সমর্থন করে, যার মাধ্যমে JSON ডকুমেন্ট তৈরি করা সম্ভব। এটি সাধারণত Document Types হিসেবে কাজ করে, যেখানে বিভিন্ন ধরনের ডেটা ফরম্যাট (যেমন JSON) ব্যবহার করা হয়।

Syntax:

CREATE TABLE table_name (
    column1_name JSON,
    column2_name column2_datatype,
    ...
);

উদাহরণ:

ধরা যাক, আমরা একটি products নামক টেবিল তৈরি করতে চাই, যেখানে একটি কলামে JSON ডকুমেন্ট থাকবে।

CREATE TABLE products (
    id INT PRIMARY KEY,
    details JSON
);

এই SQL কোডটি একটি products টেবিল তৈরি করবে, যেখানে:

  • id: একটি পূর্ণসংখ্যা (integer), যা প্রতিটি পণ্যের জন্য ইউনিক আইডেন্টিফায়ার হিসেবে কাজ করবে।
  • details: একটি JSON ডেটা টাইপ, যেখানে পণ্যের বিস্তারিত তথ্য যেমন নাম, মূল্য, বিবরণ ইত্যাদি JSON ফরম্যাটে সংরক্ষণ করা যাবে।

JSON ডেটা ইনসার্ট করা:

একটি JSON ডকুমেন্ট ইনসার্ট করার জন্য, আপনি নিম্নলিখিত SQL কোড ব্যবহার করতে পারেন:

INSERT INTO products (id, details)
VALUES (1, '{"name": "Laptop", "price": 50000, "brand": "Dell"}');

এই SQL কোডটি products টেবিলে একটি পণ্য ইনসার্ট করবে, যেখানে details কলামে JSON ডেটা থাকবে।


৩. H2 ডেটাবেজে টেবিল তৈরি করার বিশেষ বৈশিষ্ট্য

  • প্রাথমিক কী (Primary Key): যখন টেবিল তৈরি করেন, তখন আপনাকে একটি প্রাথমিক কী নির্ধারণ করতে হবে, যা প্রতিটি রেকর্ডের জন্য ইউনিক আইডেন্টিফায়ার হিসেবে কাজ করবে।
  • অটো ইনক্রিমেন্ট (Auto Increment): H2 ডেটাবেজে, একটি কলামকে অটো ইনক্রিমেন্ট হিসেবে নির্ধারণ করা যায়, যাতে প্রতিটি নতুন রেকর্ডে একটি নতুন মান স্বয়ংক্রিয়ভাবে যুক্ত হয়। উদাহরণস্বরূপ:

    CREATE TABLE students (
        id INT AUTO_INCREMENT PRIMARY KEY,
        name VARCHAR(100),
        age INT
    );
    
  • ডেটা টাইপ: H2 বিভিন্ন ডেটা টাইপ সমর্থন করে, যেমন INT, VARCHAR, DATE, BOOLEAN, JSON ইত্যাদি। ডেটা টাইপ সঠিকভাবে ব্যবহার করা গুরুত্বপূর্ণ, কারণ এটি ডেটা সঠিকভাবে সংরক্ষণ এবং পুনরুদ্ধার করতে সহায়ক হবে।

উপসংহার

H2 ডেটাবেজে টেবিল তৈরি এবং ডকুমেন্ট তৈরি করা অত্যন্ত সহজ এবং সরল। CREATE TABLE কমান্ড ব্যবহার করে আপনি টেবিল তৈরি করতে পারেন এবং JSON ডেটা টাইপ ব্যবহার করে ডকুমেন্ট ম্যানেজ করতে পারেন। H2 ডেটাবেজে টেবিল এবং ডকুমেন্ট তৈরি করা প্রক্রিয়া খুবই কার্যকর এবং দ্রুত ডেভেলপমেন্টের জন্য উপযুক্ত।

common.content_added_by

Read: ডেটা পড়া (SELECT কুয়েরি)

227
227

H2 ডেটাবেজে ডেটা পড়া বা SELECT কুয়েরি হল SQL ভাষায় সবচেয়ে মৌলিক এবং গুরুত্বপূর্ণ অপারেশনগুলোর একটি, যা ডেটাবেজ থেকে নির্দিষ্ট ডেটা নির্বাচন করার জন্য ব্যবহৃত হয়। এটি মূলত ডেটাবেজ টেবিল থেকে তথ্য সংগ্রহ করতে ব্যবহৃত হয়, এবং বিভিন্ন শর্ত এবং ফিল্টার ব্যবহার করে নির্দিষ্ট ডেটা নির্বাচন করা সম্ভব।


SELECT কুয়েরি এর মৌলিক কাঠামো

SELECT কুয়েরি সাধারণত নিম্নলিখিত কাঠামো অনুসরণ করে:

SELECT <কলাম_নাম>
FROM <টেবিল_নাম>
WHERE <শর্ত>;
  • SELECT: এটি নির্দিষ্ট কলামগুলি নির্বাচন করার জন্য ব্যবহৃত হয়।
  • FROM: এখানে সেই টেবিলের নাম উল্লেখ করতে হয় যেখান থেকে ডেটা নেওয়া হবে।
  • WHERE: (ঐচ্ছিক) এটি ডেটা ফিল্টার করার জন্য ব্যবহৃত হয়, অর্থাৎ কোন শর্ত পূরণ হলে সেই ডেটা ফেরত আসবে।

SELECT কুয়েরি এর উদাহরণ

১. সব ডেটা পড়া

ধরা যাক আমাদের একটি students নামক টেবিল রয়েছে এবং আমরা এই টেবিলের সমস্ত ডেটা দেখতে চাই:

SELECT * FROM students;

এই কুয়েরি সকল কলাম এবং সব রেকর্ড (লাইন) ফিরিয়ে দেবে যা students টেবিলের মধ্যে আছে। * ব্যবহার করা হয় সমস্ত কলাম নির্বাচন করতে।

২. নির্দিষ্ট কলাম নির্বাচন করা

আপনি যদি শুধু কিছু নির্দিষ্ট কলাম পড়তে চান, তাহলে সেই কলামগুলো স্পেসিফাই করতে হবে:

SELECT name, age FROM students;

এই কুয়েরি শুধু students টেবিলের name এবং age কলাম থেকে ডেটা ফিরিয়ে দেবে।

৩. শর্ত ভিত্তিক ডেটা নির্বাচন করা

WHERE ক্লজ ব্যবহার করে আপনি ডেটা ফিল্টার করতে পারেন। উদাহরণস্বরূপ, যদি আমরা শুধু এমন ছাত্রদের দেখতে চাই যারা ২০ বছরের বেশি, তাহলে কুয়েরি হবে:

SELECT * FROM students WHERE age > 20;

এই কুয়েরি কেবলমাত্র সেই ছাত্রদের তথ্য দেখাবে যাদের age ২০ এর বেশি।

৪. বিশেষ শর্তে ডেটা ফিল্টার করা

আপনি যদি একাধিক শর্ত দিতে চান, তাহলে AND বা OR ব্যবহার করতে পারেন:

SELECT name, age FROM students WHERE age > 20 AND gender = 'Female';

এই কুয়েরি কেবলমাত্র সেই ছাত্রীর নাম এবং বয়স ফিরিয়ে দেবে যাদের বয়স ২০ এর বেশি এবং লিঙ্গ 'Female'।

৫. ORDER BY ব্যবহার করে ডেটা সাজানো

ORDER BY কুয়েরি ডেটা সাজানোর জন্য ব্যবহৃত হয়। আপনি যদি age কলাম অনুসারে ডেটা সাজাতে চান তাহলে কুয়েরি হবে:

SELECT * FROM students ORDER BY age;

এটি ছাত্রদের বয়স অনুসারে আস্থরিকভাবে (ascending) সাজাবে। আপনি যদি বয়সের উপর উল্টো (descending) সাজাতে চান, তাহলে DESC ব্যবহার করবেন:

SELECT * FROM students ORDER BY age DESC;

SELECT কুয়েরি এর উন্নত ফিচার

১. LIMIT

LIMIT কুয়েরি ডেটার সংখ্যা সীমিত করার জন্য ব্যবহৃত হয়। যদি আপনি শুধুমাত্র প্রথম ৫টি রেকর্ড দেখতে চান, তাহলে:

SELECT * FROM students LIMIT 5;

এটি শুধুমাত্র প্রথম ৫টি রেকর্ড দেখাবে।

২. DISTINCT

DISTINCT ব্যবহার করে আপনি পুনরাবৃত্তি হওয়া মান বাদ দিয়ে ইউনিক মান নির্বাচন করতে পারেন। উদাহরণস্বরূপ:

SELECT DISTINCT gender FROM students;

এই কুয়েরি শুধু gender কলামের ইউনিক মানগুলি ফিরিয়ে দেবে (যেমন 'Male', 'Female')।

৩. BETWEEN

BETWEEN ব্যবহার করে একটি নির্দিষ্ট রেঞ্জের মধ্যে ডেটা নির্বাচন করা হয়। উদাহরণস্বরূপ, যদি আমরা বয়সের মধ্যে ১৮ থেকে ২৫ পর্যন্ত ছাত্রদের দেখতে চাই:

SELECT * FROM students WHERE age BETWEEN 18 AND 25;

এই কুয়েরি বয়স ১৮ থেকে ২৫ পর্যন্ত ছাত্রদের তথ্য দেখাবে।

৪. IN

IN ব্যবহার করে আপনি একাধিক মানের মধ্যে ডেটা নির্বাচন করতে পারেন। উদাহরণস্বরূপ, যদি আমরা এমন ছাত্রদের দেখতে চাই যাদের বয়স ২০, ২২ বা ২৪:

SELECT * FROM students WHERE age IN (20, 22, 24);

এটি কেবলমাত্র সেই ছাত্রদের তথ্য ফিরিয়ে দেবে যাদের বয়স ২০, ২২ অথবা ২৪।


SELECT কুয়েরি এর সঙ্কলন

SELECT কুয়েরি একটি অত্যন্ত শক্তিশালী এবং গুরুত্বপূর্ণ SQL অপারেশন, যা ডেটাবেজ থেকে ডেটা সংগ্রহ করতে ব্যবহৃত হয়। H2 ডেটাবেজে SELECT কুয়েরি ব্যবহার করে আপনি বিভিন্ন ধরনের ডেটা ফিল্টার, সাজানো এবং শর্ত অনুযায়ী নির্বাচন করতে পারবেন। এটি শুধুমাত্র ডেটা পড়ার জন্য নয়, বরং ডেটাবেজে বিদ্যমান তথ্য বিশ্লেষণ এবং পর্যালোচনা করার জন্যও ব্যবহৃত হয়।

SELECT কুয়েরি প্রাথমিক থেকে উন্নত ফিচার ব্যবহার করে আরও কার্যকরী হতে পারে এবং ডেটাবেজ পরিচালনার ক্ষেত্রে অত্যন্ত গুরুত্বপূর্ণ ভূমিকা পালন করে।

common.content_added_by

Update: ডেটা আপডেট করা

193
193

H2 Database-এ ডেটা আপডেট করা (Update Operation) একটি অত্যন্ত গুরুত্বপূর্ণ SQL অপারেশন, যা একটি টেবিলের মধ্যে বিদ্যমান রেকর্ডের মান পরিবর্তন করতে ব্যবহৃত হয়। SQL-এ UPDATE কমান্ড ব্যবহার করে আমরা নির্দিষ্ট শর্ত অনুযায়ী টেবিলের ডেটা আপডেট করতে পারি।

এই অপারেশনটি অত্যন্ত গুরুত্বপূর্ণ, বিশেষ করে যখন আমাদের ডেটাবেজে সঞ্চিত তথ্য পরিবর্তন বা সংশোধন করার প্রয়োজন হয়। এটি শুধুমাত্র ডেটা পরিবর্তন করে, কিন্তু টেবিলের গঠন বা অন্যান্য বৈশিষ্ট্য অপরিবর্তিত থাকে।


SQL Syntax: UPDATE

SQL-এ UPDATE কমান্ডের সাধারণ স্যন্ট্যাক্স নিচে দেয়া হলো:

UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
  • table_name: সেই টেবিলের নাম যেখানে আপনি ডেটা আপডেট করতে চান।
  • SET: নতুন মান নির্ধারণ করতে ব্যবহৃত হয়। এখানে column1, column2 এর মান নির্ধারণ করা হয়।
  • WHERE condition: এটি একটি শর্ত যা নির্ধারণ করে কোন রেকর্ডটি আপডেট হবে। যদি WHERE শর্ত না দেয়া হয়, তবে সমস্ত রেকর্ড আপডেট হয়ে যাবে।

উদাহরণ: UPDATE অপারেশন

ধরা যাক, আমাদের একটি students নামে টেবিল রয়েছে, যেখানে ছাত্রদের নাম, বয়স এবং গ্রেডের তথ্য সংরক্ষিত আছে। টেবিলের কিছু রেকর্ডে গ্রেড আপডেট করার জন্য আমরা UPDATE কমান্ড ব্যবহার করতে পারি।

students টেবিলের ধারণা:

idnameagegrade
1Alice20B
2Bob22A
3Charlie23C

১. একক রেকর্ড আপডেট করা:

ধরা যাক, আমরা Alice এর গ্রেড পরিবর্তন করতে চাই। আমরা UPDATE কমান্ড ব্যবহার করে তার গ্রেড পরিবর্তন করতে পারি:

UPDATE students
SET grade = 'A'
WHERE name = 'Alice';

এটি শুধুমাত্র Alice এর রেকর্ডের গ্রেড আপডেট করবে এবং টেবিলটি হবে:

idnameagegrade
1Alice20A
2Bob22A
3Charlie23C

২. একাধিক কলাম আপডেট করা:

আপনি একাধিক কলামও একসাথে আপডেট করতে পারেন। ধরুন, Bob এর বয়স এবং গ্রেড দুটি একসাথে আপডেট করতে চাই:

UPDATE students
SET age = 23, grade = 'A+'
WHERE name = 'Bob';

এখন Bob এর রেকর্ড হবে:

idnameagegrade
1Alice20A
2Bob23A+
3Charlie23C

৩. শর্ত ছাড়াই আপডেট করা:

যদি আপনি সব রেকর্ডের ডেটা পরিবর্তন করতে চান, তবে WHERE ক্লজ বাদ দিতে পারেন। তবে সতর্ক থাকুন, কারণ এতে সব রেকর্ড আপডেট হবে।

UPDATE students
SET grade = 'B';

এটি সমস্ত ছাত্রের গ্রেড আপডেট করবে:

idnameagegrade
1Alice20B
2Bob22B
3Charlie23B

UPDATE অপারেশনে কিছু গুরুত্বপূর্ণ পয়েন্ট:

  • WHERE শর্ত: WHERE শর্ত ব্যবহার না করলে সমস্ত রেকর্ড আপডেট হয়ে যাবে, যা অপ্রত্যাশিত ফলাফল তৈরি করতে পারে।
  • বিভিন্ন কলাম আপডেট: একাধিক কলাম আপডেট করার সময় প্রতিটি কলামের মধ্যে , (কমা) ব্যবহার করতে হয়।
  • নতুন মান: যেসব কলামে নতুন মান প্রদান করা হচ্ছে, সেগুলি সঠিকভাবে চিহ্নিত করা জরুরি। যেমন, টেক্সট মানগুলি সাধারণত ' ' (কোটেশন চিহ্ন) এর মধ্যে রাখতে হয়।
  • ট্রানজেকশন: যদি আপনি নিশ্চিত না হন যে ডেটা ঠিকভাবে আপডেট হবে কিনা, তবে আপনি BEGIN TRANSACTION এবং COMMIT ব্যবহার করে ট্রানজেকশন শুরু করতে পারেন। এটি আপনাকে আপডেট সম্পন্ন করার আগে পরিবর্তনগুলি যাচাই করার সুযোগ দেয়।

উপসংহার:

H2 Database-এ UPDATE অপারেশন একটি অত্যন্ত গুরুত্বপূর্ণ ডেটাবেস ম্যানিপুলেশন টুল যা ডেটাবেজে সঞ্চিত রেকর্ডগুলির মান পরিবর্তন করতে ব্যবহৃত হয়। সঠিকভাবে UPDATE কমান্ড ব্যবহার করলে আপনি আপনার ডেটাবেজের তথ্য সঠিকভাবে আপডেট করতে পারবেন।

common.content_added_by

Delete: ডেটা ডিলিট করা

241
241

H2 ডেটাবেজে ডেটা ডিলিট (Delete) করার জন্য SQL-এর DELETE কমান্ড ব্যবহৃত হয়। এই কমান্ডটি একটি নির্দিষ্ট শর্তের (condition) ভিত্তিতে টেবিল থেকে রেকর্ড (row) মুছে দেয়। এটি ফিজিক্যাল ডিলিট (physical delete) অর্থাৎ ডেটাবেজ থেকে সম্পূর্ণভাবে রেকর্ড মুছে ফেলে।


DELETE কমান্ডের মৌলিক সিনট্যাক্স

DELETE FROM table_name WHERE condition;
  • table_name: যে টেবিল থেকে ডেটা ডিলিট করতে চান তার নাম।
  • condition: যে শর্তে ডেটা ডিলিট করতে চান, এটি নির্দিষ্ট করা হয়। যদি শর্ত না থাকে, তাহলে পুরো টেবিলের সমস্ত রেকর্ড ডিলিট হয়ে যাবে।

উদাহরণ:

১. নির্দিষ্ট রেকর্ড ডিলিট করা

ধরা যাক, আপনার একটি students নামে টেবিল আছে, যেখানে ছাত্রদের তথ্য রয়েছে, এবং আপনি একটি নির্দিষ্ট ছাত্রের রেকর্ড মুছে ফেলতে চান।

DELETE FROM students WHERE student_id = 10;

এটি student_id কলামে 10 থাকা ছাত্রের রেকর্ডটি মুছে ফেলবে।

২. সমস্ত রেকর্ড ডিলিট করা

যদি আপনি students টেবিল থেকে সমস্ত রেকর্ড মুছে ফেলতে চান, তবে WHERE ক্লজ ছাড়া কমান্ড ব্যবহার করতে হবে:

DELETE FROM students;

এটি টেবিলের সমস্ত রেকর্ড মুছে ফেলবে, তবে টেবিলের গঠন বা স্ট্রাকচার অপরিবর্তিত থাকবে।

৩. ইনপুট ভ্যালু অনুযায়ী ডিলিট করা

আপনি যদি কোনো নির্দিষ্ট ইনপুটের ভিত্তিতে ডেটা ডিলিট করতে চান, তবে একটি শর্ত ব্যবহার করতে পারেন। উদাহরণস্বরূপ, যদি students টেবিলের কোনো ছাত্রের নাম "John Doe" হয় এবং আপনি তার রেকর্ড মুছে ফেলতে চান:

DELETE FROM students WHERE name = 'John Doe';

DELETE এবং TRUNCATE এর মধ্যে পার্থক্য

  • DELETE: এটি নির্দিষ্ট শর্ত অনুযায়ী রেকর্ড মুছে দেয়। আপনি শর্ত না দিলে, সব রেকর্ড ডিলিট হবে, তবে টেবিলের স্ট্রাকচার অপরিবর্তিত থাকে।
  • TRUNCATE: এটি সমস্ত রেকর্ড মুছে দেয়, তবে এর ব্যবহার সাধারণত পারফরম্যান্সের জন্য এবং এটি সমস্ত রেকর্ড মুছে ফেলতে দ্রুততর হয়।

DELETE কমান্ডের বৈশিষ্ট্য

  • Transaction Safe: DELETE কমান্ড একটি transactional অপারেশন, যার মানে হল যে এটি rollback করা যেতে পারে যদি কোনও সমস্যা হয়।
  • Condition Based Deletion: এটি শর্তসাপেক্ষ ডিলিট করতে দেয়, যেমন WHERE ক্লজ ব্যবহার করে একাধিক রেকর্ড ডিলিট করা সম্ভব।
  • Slow on Large Tables: বড় টেবিল থেকে ডেটা মুছে ফেলা হলে এটি কিছুটা ধীর হতে পারে, কারণ প্রতিটি রেকর্ডের জন্য একটি lock প্রয়োগ করা হয়।

DELETE অপারেশন সম্পর্কে গুরুত্বপূর্ণ টিপস

  • Backups: ডেটা ডিলিট করার আগে অবশ্যই ব্যাকআপ নেওয়া উচিত, কারণ একবার ডেটা মুছে ফেললে তা পুনরুদ্ধার করা কঠিন।
  • WHERE ক্লজ ব্যবহার করুন: যদি আপনি ভুলভাবে DELETE কমান্ড চালান এবং শর্ত না দেন, তবে পুরো টেবিলের সমস্ত ডেটা মুছে যাবে। তাই WHERE ক্লজ ব্যবহার খুবই গুরুত্বপূর্ণ।
  • Performance Consideration: অনেক রেকর্ড ডিলিট করতে চাইলে DELETE অপারেশন পারফরম্যান্সের জন্য ধীর হতে পারে। বড় টেবিলের জন্য ট্রানজেকশন ব্যবহার করা ভাল।

সারাংশ

H2 ডেটাবেজে DELETE কমান্ড ব্যবহার করে আপনি নির্দিষ্ট শর্ত অনুযায়ী ডেটা ডিলিট করতে পারেন। তবে এটি ব্যবহারের সময় সাবধানতা অবলম্বন করা জরুরি, বিশেষ করে যদি শর্ত সঠিকভাবে না দেওয়া হয়। DELETE কমান্ড ডেটা মুছে ফেললেও টেবিলের গঠন অপরিবর্তিত থাকে এবং এটি ট্রানজেকশনাল অপারেশন, তাই ভুল হলে সহজে রোলব্যাক করা যায়।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion